Software keyboard input method for realizing composite key on electronic device screen

ABSTRACT

A software keyboard input method for implementing compound keys on an electronic device screen is provided to assist a user in fast inputting a text with convenience and efficiency. Two letters are displayed on a key. The user performs a ambiguous input by directly clicking a key, and performs a precise input by moving a contact point via which a fast selection of a symbol and a fast switching of a uppercase letter are realized. With the software keyboard input method for implementing compound keys on an electronic device screen, information can be inputted on the electronic device screen easily and accurately. The method is of convenient usage and flexibility.

FIELD OF THE INVENTION

The present invention relates to a field of electronic device screen,particularly to a field of inputting information on an electronic devicescreen, and more specifically, to a software keyboard input method forimplementing compound keys on an electronic device screen.

BACKGROUND

In modern life, various kinds of electronic devices having touch screencome into existence with the continual development of integrated circuittechnology. These numerous electronic devices having touch screen (e.g.,palmtop computer, intelligent mobile phone, embedded system, pocketcomputer, etc.) fail to be equipped with a complete hardware keyboarddue to the restriction of size, fabrication cost, etc. Thus, the inputon such devices is generally realized by software simulation.

Usually, in prior art, the conventional software keyboard may bring muchinconvenience to users. This is largely due to a small area of the touchscreen and a plenty of contents to be selected. Accordingly, thecorresponding selection area on the screen is relatively small. The usermay therefore fail to input by accurately clicking the selection area onthe screen directly via a finger. Instead, the user usually has toemploy other equipments with smaller contact point resolution, e.g., atouch pen.

In general situations, it requires the user to employ both handssimultaneously for operation, i.e., one hand for holding the electronicdevice, another hand for inputting by clicking the touch screen via atouch pen. Even so, in some cases, in a running car for example, evenwith other equipments, the user may yet possibly fail to accuratelyselect a content to be input, which is effected by the circumstance,e.g., shaking.

SUMMARY

The present invention aims at overcoming the drawbacks of the foregoingprior art, and provides a software keyboard input method forimplementing compound keys on an electronic device screen, where themethod has the characteristics of inputting information on theelectronic device screen easily and accurately, simple implementation,convenient usage, stable and reliable working performance, wide range ofapplication.

To this end, the software keyboard input method for implementingcompound keys on an electronic device screen according to the presentinvention is as follows.

According to a first aspect of the present invention, a softwarekeyboard input method for implementing compound keys on an electronicdevice screen is provided. The method includes, a first step ofdisplaying a plurality of keys on a tactile display device, wherein atleast some keys present a plurality of letters; a second step ofdetecting a contact point motion on the key performed by a user; a thirdstep of determining a content corresponding to the present key-pressperformed by the user; and a fourth step of inputting a user selectionto an editing text.

According to a second aspect of the present invention, a portableelectronic device is provided, where the portable electronic deviceadopts the software keyboard input method for implementing compound keyson an electronic device screen according to the first aspect of thepresent invention.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic illustrating a software keyboard layout accordingto a first embodiment of the present invention;

FIG. 2 is a schematic illustrating a software keyboard layout accordingto the first embodiment of the present invention;

FIG. 3 is a schematic illustrating a software keyboard layout accordingto the first embodiment of the present invention;

FIG. 4 is a schematic illustrating a software keyboard layout accordingto the first embodiment of the present invention;

FIG. 5 is a schematic illustrating a software keyboard layout accordingto the first embodiment of the present invention, where a candidate areaand an inputted letter area are included;

FIG. 6 is a schematic illustrating a software keyboard layout accordingto the first embodiment of the present invention, where an ambiguousinput method is depicted.

FIG. 7 is a schematic illustrating a software keyboard layout accordingto the first embodiment of the present invention, where a precise inputmethod is depicted.

FIG. 8 is a schematic illustrating a software keyboard layout accordingto the first embodiment of the present invention, where a symbol inputmethod is depicted.

FIG. 9 is a schematic illustrating a software keyboard layout accordingto the first embodiment of the present invention, where a method forswitching uppercase letter and lowercase letter is depicted.

FIG. 10 is a flowchart illustrating an input procedure of a softwarekeyboard according to the first embodiment of the present invention;

FIG. 11 is a schematic illustrating a software keyboard layout accordingto a second embodiment of the present invention;

FIG. 12 is a schematic illustrating a software keyboard layout accordingto the second embodiment of the present invention, where a candidatearea is included;

FIG. 13 is a flowchart illustrating an input procedure of a softwarekeyboard according to the second embodiment of the present invention;and

FIG. 14 is a basic block diagram of a computer device or portableterminal device which is applicable to the input method of the presentinvention.

DETAILED DESCRIPTION

The software keyboard input method according to the present inventionmay be applied to various electronic devices having a touch screen,especially a portable electronic device such as a mobile phone, a PDA, alaptop computer, etc.

The following embodiments are specifically illustrated for a betterunderstanding of the technical contents of the present invention.

First, it should be noted that English input is taken as an example inall the following embodiments. However, the method according to presentinvention is not limited to the kind of language. The method accordingto present invention may also be applied to various languages such asChinese, Japanese, German, etc. A software keyboard version that meetsthe requirements of different languages may be designed by only a fineadjustment of the keyboard layouts illustrated in the followingembodiments.

First Embodiment

The present embodiment illustrates an input method for fast and easilyinputting word, symbol, and switching uppercase and lowercase letter ona software keyboard layout having compound keys.

FIG. 1 illustrates a software keyboard layout 100 used in the inputmethod relating to the present invention. According to the letter layoutof the present keyboard which is based on a standard keyboard layout(QWERTY keyboard layout) of personal computer, two letters and one ormore symbols are combined on one key. For example, letters “q” and “w”,together with symbol “;” share a key 101. In a special case, letter “l”and letter “m” occupy a separate key 102 and a key 103, respectively.

For ease of illustration, a specific symbol is depicted in the locationof the symbol. It is apparent that the essentials of the presentinvention will totally not be affected by adding, deleting, changing thesymbols on the keys, changing the symbol into a number or other symbol,or modifying its layout.

Both the rows where key 102 and key 103 locate have the odd number ofletters. Thus, there are only one letter on the key 102 and key 103.However, we may also modify and adjust the key layout, as shown in FIG.2, i.e., put letter “a” on the key 201 separately, and adjust otherletters accordingly.

As shown in FIG. 3, according to some embodiments, “I” and “m” may becombined in the key 302.

As shown in FIG. 4, according to some embodiments, a symbol may becombined in the right part of the key 402 and the key 403, respectively.

In addition, the location of the space key 104 in FIG. 1 may also beadjusted optionally (e.g., at the middle or right part of the row whereit locates, or displayed at the fourth row, etc.), and other keys may beadjusted accordingly. This will not compromise the essentials of thepresent invention.

An ordinary person skilled in the art may also, based on the keyboardlayout, add one or more grids, one or more rows, one or more columns ofkeys or buttons. All of these will not compromise the essentials of thepresent invention as long as the double-letter layout of the keyboard isnot changed.

Based on the keyboard layout area 100 as shown in FIG. 1, the inputmethod may also contain a word candidate area for displaying a list ofpossible words that the user may desire to input, and contain aninputted letter area for displaying the actual input of the user. Forexample, a software keyboard 500 having a keyboard layout area 501, aninputted letter area 502 and a word candidate area 503 is illustrated inFIG. 5. The content that the user actually presses is already displayedin the inputted letter area 502. According to the input method, thepossible words that the user may input are displayed in the candidatearea 503, where the possible words are predicted based on the inputtedkey-presses. The user may click a word in the candidate area and inputit to the editing text.

The candidate area may be displayed in a fixed area of the screen, ormay be displayed in an area near the cursor in the current editing text.There may be none or any number of the candidate words (within the rangeallowed by the screen) in the candidate area. The inputted letter area502 may be displayed in a fixed area of the screen, or may be displayedin an area near the cursor in the editing text. These will notcompromise the essentials of the present invention.

According to the first embodiment of the present invention, a softwarekeyboard based on a letter layout of a standard keyboard (QWERTYkeyboard) of personal computer is displayed, and two letters and/or oneor more symbols are combined on one key. Thus, benefits such asdisplaying larger key-presses on the screen with a limited size andreducing keystroke errors are achieved. Of course, it is appreciated bya person of ordinary skill in the art that although the first embodimentof the present invention is illustrated by way of the layout similar tothe QWERTY keyboard, other keyboard layouts may also adopt the inputmethod according to the present invention as long as two or more lettersare combined on one key.

The following discussion will be made to an embodiment of a softwarekeyboard input method based on the keyboard layout 500 as shown in FIG.5.

Ambiguous Input Approach

The ambiguous input approach means that when the user directly presses akey on the keyboard, the input method may search possible candidatewords in a dictionary based on the contents that the user has inputtedalready, and may display a word list in the candidate area according tothe word frequency. The dictionary herein may be an information databasestored in the form of files, which may include all or parts of Englishwords and other forms, or may further include user-defined words, or mayfurther include information of the frequency of use of each word,information of a phrase combination, or a semantic model, etc.

For example, as shown in FIG. 6, assume that the user desires to input aword “product”. When the user presses keys 601, 602 and 601 in sequence,although the key 601 includes “p” and “o” at the same time, and the key602 includes “e” and “r” at the same time, the input method mayenumerate, based on the sequence of these three inputted keys, all thewords in the dictionary with their first three letters meeting theinputted keys. And, the input method may display several words with thehighest frequency, e.g., “product”, “proactive”, “probable”, “profit”,in the candidate area 604.

In some embodiments, the candidate words may possibly be adjusted basedon the context of the editing text, and further based on the semanticmodel. Therefore, most probable candidate words in the context hereinmay be displayed in the candidate area.

In the inputted letter area 603, the letters that the user alreadyinputted are displayed. Since three key-presses may represent aplurality of letter combinations at this point, the area may displaythree initial letters of the first candidate word, e.g., “pro”. With thecontinuation of input, the first candidate word will be changedconstantly, and therefore the letters in this area will be adjusteddynamically.

The user may click a candidate word in the candidate area 604 and inputit to a target text field. For example, the user may click and input thecandidate word “product”. When the desired input is the first candidateword, the user may press a shortcut key (e.g., a space key) to input itdirectly. Or, the user may click the combination of the inputted lettersin the inputted letter area 603, and input “pro” in the text.

When the user clicks the combination of the inputted letters which isnot included in the dictionary, the system may indicate the user orautomatically add the combination into the dictionary.

The symbol on the key will not function during the ambiguous input. Themethod merely considers the letters on the key. When there is only oneletter on a key (e.g., the key 102 in FIG. 1 and the key 402 in FIG. 4),the effect thereof equals a precise input approach in the followingdescription.

Precise Input Approach

The precise input approach means that the user may press a key, and thenrelease the key after moving for a certain distance, achieving the goalof precisely inputting a character or a symbol.

For example, as shown in FIG. 7, it assumes that the user desires toinput the word “acknowledge”. To improve the accuracy of the candidatewords, the user may precisely input the first three letters “ack”. Theuser may press the key 701, and then release the key 701 after moving acontact point leftwards for a certain distance (e.g., more than 10pixels), and thereby the letter “a” is inputted. The user may press thekey 702, and then release the key 702 after moving leftwards for acertain distance, and thereby the letter “c” is inputted. The user maypress the key 703, and then release the key 703 after moving rightwardsfor a certain distance, and thereby the letter “k” is inputted. At thispoint, the input method may search all the words starting with “ack” inthe dictionary, and display them in the candidate area 705.

The precise input and the ambiguous input may be used at the same time.For example, the user may first precisely input “a” (press the key 701and then release the key 701 after moving leftwards), then ambiguouslyinput “c” and “k” (press the key 702 and the key 703 and then releasethe key directly). The input method may also search all the matchingwords in the dictionary, and display them in the candidate area.

The distance for moving the contact point may be any predeterminedvalue, or may be configured by the user. This will not compromise theessentials of the present invention.

Inputting a User-Defined Word

Sometimes the words that user desires to input are not included in thedictionary, for example, some rare words, abbreviations, slangs, ordedicated terms, etc. Since the precise input approach is provided, theuser may easily input the words not included in the dictionary.

For example, as shown in FIG. 7, when the user desires to input the word“ack” which is not included in the word library, the user may preciselyinput “ack”, and directly click the inputted letter area 704 to inputthe word “ack” to the editing text.

Fast Inputting Punctuations, Numbers or Other Symbols

The user may fast input punctuations, numbers or other symbols via acontact point motion on a key. For example, as shown in FIG. 8, the usermay input the punctuation “?” in the following way: press the key 801,then release the key 801 after moving the contact point downwards for acertain distance.

Of course, it is appreciated by a person of ordinary skill in the artthat other approaches may also be employed for inputting punctuations,e.g., inputting the punctuation “?” by way of clicking the key 801 andthen holding for a period (long-press).

In some embodiments, one or more symbols may be combined on one key. Asshown in FIG. 4, when the user presses the key 402 and moves the contactpoint rightwards for a certain distance, thus, the symbol “&” isinputted. Similarly, in some embodiments, the symbol may be combined onthe key at an upper part, a lower part, a left part, a right part, anupper left part, an upper right part, a lower left part, a lower rightpart, etc. The user may input the corresponding symbol by moving thecontact point towards the symbol.

Fast Switching Uppercase and Lowercase

The user may fast switch and input uppercase and lowercase letter via acontact point motion on the key. For example, as shown in FIG. 9, assumethe user desires to input the word “Amy”, and assume that the word isalready included in the dictionary. Thus, the user may perform thefollowing steps. The user may press the key 901, then release the key901 after moving the contact point upwards for a certain distance, andthereby the uppercase letter “A” or “S” is inputted ambiguously. Next,the user may press the keys 902 and 903 in sequence. The word “Amy” ispresented in the candidate area 905.

If “Amy” is not included in the dictionary, the user may perform thefollowing steps. The user may press the key 901, then release the key901 after moving the contact point upper-left to a certain position, andthereby the uppercase letter “A” is inputted. Next, the user mayprecisely input “m” (press the key 902) and “y” (press the key 903, andthen move the contact point rightwards).

The determination method regarding moving the contact point upper-leftto a certain position may be as follows. Compare coordinates of aposition where the contact point is pressed with coordinates of aposition where the contact point is released. It is regarded thatswitching to uppercase letter is conducted, when the latter positionlocates at the upper-left part of the former position, the differencebetween the x-axis of the two positions is larger than a certain value,and the difference between the y-axis of the two positions is largerthan a certain value.

Of course, other contact point motions may also be employed forswitching uppercase and lowercase. For example, in some embodiments, theuppercase letter “A” or “S” may be inputted ambiguously by way ofpressing the key 901 and holding the key 901 for a period (long-press).The uppercase letter “A” may be precisely inputted by pressing the key901, then long-pressing the key 901 after moving leftwards for a certaindistance. The uppercase letter “S” may be precisely inputted by pressingthe key 901, then long-pressing the key 901 after moving rightwards fora certain distance.

For another example, in some embodiments, press the key 901, and thenmove the contact point upwards to a certain distance and then move backto switch to the uppercase mode “A” or “S”. Next, continue to move thecontact point leftwards or rightwards to precisely input the letter “A”or “S”.

It is to be noted that the method described herein is not onlyapplicable to the situation of switching the lowercase letter to theuppercase letter, but also applicable to the situation of switching theuppercase letter to the lowercase letter. For example, when the defaultstatus of the keyboard is the uppercase, all of the foregoing contactpoint motions may be employed for fast switching the uppercase to thelowercase letter.

Indication Area

Since the user requires to precisely input word, symbol, and switchuppercase and lowercase letter via a contact point motion (e.g., movingfor a certain distance, or long-pressing for a period, etc.), the usermay need a kind of indication information for confirming whether theinput contents that the system determines are the contents that the userdesires to input.

This can be achieved by setting an indication area, where the indicationarea is configured to indicate the contexts inputted currently to theuser. In normal situation, the indication area may be hidden. When theuser presses a certain key, the indication area may be presented abovethe key, and the contexts to be inputted currently may be displayeddynamically with the change of the contact point motion. For example,when the user presses the key “a s”, the amplified “a s” is displayed inthe indication area above the key. When the contact point is movedleftwards for a certain distance, the amplified “a” is displayed in theindication area. When the contact point is moved rightwards for acertain distance, the amplified “s” is displayed in the indication area.When the contact point is moved downwards for a certain distance, thesymbol “*” is displayed. When the contact point is moved upwards for acertain distance, the uppercase letter “A S” is displayed. When thecontact point is moved upper-left, the uppercase letter “A” isdisplayed. When the contact point is moved upper-right, the uppercaseletter “S” is displayed.

Such kind of indication area is optional.

FIG. 10 is a flowchart illustrating a procedure of the input methodaccording to the first embodiment of the present invention. Theprocedure includes the following steps. Step 1001: Display a pluralityof keys on a tactile display device, where at least some keys presenttwo letters. Step 1002 (optional): One or more symbols (e.g.,punctuation, number or other symbol) are further included on some keys.Step 1003: Detect a contact point motion on the key performed by theuser. Step 1004: Determine a content corresponding to the currentkey-press performed by the user. Step 1005 (optional): Displayindication information of a current input. Step 1006 (optional): Selecta predicted candidate word in the dictionary based on the contentinputted by the user and display the predicted candidate word. Step 1007(optional): Input a user selection to an editing text.

In terms of step 1001, the keyboard layout thereof may be the QWERTYkeyboard layout. When there are two letters on the key, the letters maybe in a horizontal layout. Some examples of the keyboard layout may bereferred to FIG. 1, FIG. 2, FIG. 3 and FIG. 4. However, the presentinvention is not limited to these layouts.

In terms of step 1002, when there is one or more symbols on the key,these symbols may be located on the key at an upper part, a lower part,a left part, a right part, a lower left part, a lower right part, anupper left part, or an upper right part. The position of the symbols maybe adjusted appropriately based on the position of the existing letter.In some embodiments, the symbol may not be displayed. Thus, this step isoptional.

In terms of step 1003, the contact point motion may include pressing andthen directly releasing the key; pressing the key, and then releasingthe key after moving the contact point towards a certain direction for acertain distance; long-pressing the key over a specified period; movingthe contact point and then holding on over a specified period, etc.

In terms of step 1004, the determination method may include thefollowing substeps.

1) If the contact point motion is pressing and then directly releasingthe key, then it is determined that the content of the present input isany one of the letters on the key, where the content is determined aftera certain candidate word in the dictionary is selected by the user,i.e., the ambiguous input approach.

2) If the contact point motion is pressing the key, and then releasingthe key after moving the contact point towards a direction of a certainletter for a certain distance, then it is determined that the content ofthe present input is the letter in such direction on the key, i.e., theprecise input approach. For example, in FIG. 9, the letter “a” isinputted by moving leftwards on the key 901, and the letter “s” isinputted by moving rightwards. (optional)

3) If the contact point motion is pressing the key, and then releasingthe key after moving the contact point towards a direction of a certainsymbol for a certain distance, then it is determined that the content ofthe present input is the symbol in such direction on the key. Forexample, in FIG. 9, the symbol “*” is inputted by moving downwards onthe key 901. The contact point motion may also be long-pressing the keyover a specified period, and then inputting the symbol. For example, inFIG. 9, the symbol “*” is inputted after long-pressing the key 901.(optional)

4) If the contact point motion is releasing the key after moving thecontact point upwards for a certain distance, then it is determined thatthe content of the present input is the capital form of any one of theletters on the key, i.e., also the ambiguous input approach. (optional)

5) If the contact point motion is releasing the key after moving thecontact point upper-left for a certain distance, then it is determinedthat the content of the present input is the capital form of the leftletter on the key. If the contact point motion is releasing the keyafter moving the contact point upper-right for a certain distance, thenit is determined that the content of the present input is the capitalform of the right letter on the key. For example, in FIG. 9, theuppercase letter “A” is inputted by moving upper-left on the key 901,and the letter “S” is inputted by moving upper-right. (optional)

6) The contact point motion in the substeps 4) and 5) may be changed toreleasing the key after long-pressing the key over a specified periodfor inputting the uppercase letter. For example, in FIG. 9, theuppercase letter “A” or “S” is ambiguously inputted by long-pressing thekey 901 over a period. The uppercase letter “A” may be preciselyinputted by long-pressing the key 901 after moving the contact pointleftwards for a certain distance. The uppercase letter “S” may beprecisely inputted by long-pressing the key 901 after moving the contactpoint rightwards for a certain distance. (optional)

In terms of step 1005, the contents of the current input may bedynamically amplified and displayed in the indication area (e.g., abovethe pressed key).

In terms of step 1006, the input method may search, based on thecombination of the letters inputted by the user (which may includeprecise input and ambiguous input), the words in the dictionary (whichmay include a user-defined dictionary), and may display the possiblecandidate words in the candidate area.

In terms of step 1007, the user may directly click a candidate word inthe candidate area to input it to the editing text, or may use ashortcut key (e.g., SPACE or Enter key) to automatically input the firstcandidate word to the editing text. When the word that the user desiresto input is not included in the candidate word list, the letter inputtedalready may be directly inputted to the text.

Although the procedure 1000 of the input method includes a series ofsteps performed in sequence, apparently, the procedure may include moreor fewer steps. And the steps may be performed in series or in parallel(e.g., using a multithread processor), or several steps may be combinedinto one step, or only the combination of some steps may be selected, orother contact point motions may be adopted. For example, it is very easyfor a person of ordinary skill in the art to design an input methodbased on the essence of the present invention, where the symbol is notdisplayed (i.e., without step 1002) while the double-letter layout aswell as ambiguous and precise input approaches are still adopted; or todesign another input method, where substeps 4), 5), or 6) in step 1004are omitted, i.e., without fast switching uppercase and lowercaseletter; or to design another input method, where the condition of thecontact point motion in step 1004 is changed to inputting the symbol bydouble-click, etc. Apparently, such changes will not compromise theessentials of the present invention.

The foregoing layouts are designed based on English keyboard. However,it is readily appreciated by a person of ordinary skill in the art thatthe layouts may also be applied to a keyboard in other languages, e.g.,German keyboard, French keyboard, etc. The keyboards in these languagesmay differ in their letters and layouts. However, the method of thepresent invention may also be adopted, as long as the keyboards aremodified similarly to the double-letter layout of the present design byreferring to the computer keyboard layout, to thereby achieve thebenefits of accelerating the input efficiency and rate, reducing inputerrors, and so forth. Therefore, such changes will not compromise theessentials of the present invention either.

Embodiment Two

The ambiguous input approach included in the software keyboard inputmethod described in the first embodiment may be applied to a lot ofscenarios of text input. However, when the user needs to input adedicated term on an electronic device, such as password, personal name,palace name, etc., the ambiguous input approach may not exhibit itsadvantage, but may affect the input rate. At this point, there is a needfor a method for merely providing precise input.

The present embodiment describes a method for precise input. When theuser presses a key and moves a contact point, a letter in the movementdirection is inputted. When the user presses the contact point anddirectly releases the contact point, the input letter is determinedbased on the initial position of the contact point.

The software keyboard layout in the present embodiment is similar to thekeyboard layout in the first embodiment, as shown in FIG. 2.

In addition, the input approach in the present embodiment is alsosimilar to that in the first embodiment, including precise input for aletter, input for a symbol, fast input for a uppercase letter, etc. Butthe difference lies in that there is no ambiguous input in the presentembodiment.

As shown in FIG. 11, when the user presses the key 1101, and releasesthe contact point after moving leftwards for a certain distance, theletter “o” is inputted. When the user presses the key 1101, and releasesthe contact point after moving rightwards for a certain distance, theletter “p” is inputted.

Unlike the first embodiment, when the user presses the key 1101 andreleases it directly, it is determined whether the input letter is “o”or “p” based on the initial position of the contact point, rather thanperforming the ambiguous input. If the contact point locates at the leftpart of the key, “o” is inputted; otherwise, “p” is inputted. Forexample, in FIG. 11, assume that the contact point is pressed at theposition of dot 1104, “o” is inputted since the dot is at the left partof the key. If the contact point is pressed at the position of dot 1103,“p” is inputted since the dot is at the right part of the key.

The width of the key may be set to an even number of pixels to avoid thesituation that the contact point is exactly at the middle position ofthe key. Or, the system may specify that the middle position indicates aletter at the left part or a letter at the right part.

Similar to the first embodiment, the present embodiment may input thesymbol, switch the uppercase letter and the lowercase letter, via thecontact point motion. For example, when the user presses the key 1101,then releases the key 1101 after moving the contact point downwards fora certain distance, the symbol “&” may be inputted. When the userpresses the key 1101, then releases the key 1101 after moving thecontact point upper-left or upper-right for a certain distance, theuppercase letter “O” and “P” may be inputted.

Since there is no ambiguous input, the keyboard layout of the presentembodiment needs no candidate area. The user may directly input thesymbol to the editing text upon each key-press. Of course, in someembodiments, the candidate area may still be displayed for predictingthe user input. For example, in FIG. 12, after the user precisely inputsthe letters “a”, “c”, “k” in sequence, “ack” is directly presented inthe editing text area 1206. And the candidate words predicted by thesystem, such as “acknowledge”, “acknowledgement”, etc., are presented atthe candidate area 1205 at the same time. The user may input the desiredpredicted word via a click or a corresponding shortcut key, to therebyaccelerate the input rate. The candidate area is optional.

Similarly, in order to indicate the input content that is currentlydetermined to the user, an indication area as described in the firstembodiment may be displayed for dynamically displaying the content to beinputted currently. The indication area is also optional.

FIG. 13 is a flowchart illustrating a procedure of the input methodaccording to the second embodiment of the present invention. Theprocedure includes the following steps. Step 1301: Display a pluralityof keys on a tactile display device, where at least some keys presenttwo letters. Step 1302 (optional): One or more symbols (e.g.,punctuation, number or other symbol) are further included on some keys.Step 1303: Detect a contact point motion on the key performed by theuser. Step 1304: Determine a precise content corresponding to thecurrent key-press performed by the user. Step 1305 (optional): Displayindication information. Step 1306 (optional): Display a predictedcandidate word based on the content inputted by the user. Step 1307(optional): Input a user selection to an editing text.

In terms of step 1301, the keyboard layout thereof may be the QWERTYkeyboard layout. When there are two letters on the key, the letters maybe in a horizontal layout. Some examples of the keyboard layout may bereferred to FIG. 1, FIG. 2, FIG. 3 and FIG. 4. However, the presentinvention is not limited to these layouts.

In terms of step 1302, when there is one or more symbols on the key,these symbols may be located on the key at an upper part, a lower part,a left part, a right part, a lower left part, a lower right part, anupper left part, or an upper right part. The position of the symbols maybe adjusted appropriately based on the position of the existing letter.In some embodiments, the symbol may not be displayed. Thus, this step isoptional.

In terms of step 1003, the contact point motion may include pressing andthen directly releasing the key; pressing the key, and then releasingthe key after moving towards a certain direction for a certain distance;long-pressing the key over a specified period; moving the contact pointand then holding on over a specified period, etc.

In terms of step 1004, the determination method may include thefollowing substeps.

1) If the contact point motion is pressing and then directly releasingthe key, then the position of the pressed contact point is determined.If the contact point is pressed at the left part of the key, then theleft letter on the key is inputted; otherwise, the right letter on thekey is inputted.

2) If the contact point motion is releasing the key after moving towardsa direction of a certain letter for a certain distance, then it isdetermined that the content of the present input is the letter in thedirection on the key. For example, in FIG. 9, the letter “a” is inputtedby moving leftwards on the key 901, and the letter “s” is inputted bymoving rightwards. (optional)

3) If the contact point motion is releasing the key after moving towardsa direction of a certain symbol for a certain distance, then it isdetermined that the content of the present input is the symbol in thedirection on the key. For example, in FIG. 9, the symbol “*” is inputtedby moving downwards on the key 901. The contact point motion may also belong-pressing the key over a specified period, and then inputting thesymbol. For example, in FIG. 9, the symbol “*” is inputted afterlong-pressing the key 901. (optional)

4) If the contact point motion is releasing the key after movingupper-left for a certain distance, then it is determined that thecontent of the present input is the capital form of the left letter onthe key. If the contact point motion is releasing the key after movingupper-right for a certain distance, then it is determined that thecontent of the present input is the capital form of the right letter onthe key. For example, in FIG. 9, the uppercase letter “A” is inputted bymoving upper-left on the key 901, and the letter “S” is inputted bymoving upper-right on the key 901. (optional)

5) The contact point motion in said substeps 4) and 5) may be changed toreleasing the key after long-pressing over a specified period forinputting the uppercase letter. For example, in FIG. 9, the uppercaseletter “A” may be precisely inputted by long-pressing the key 901 aftermoving the contact point leftwards for a certain distance. The uppercaseletter “S” may be precisely inputted by long-pressing the key 901 aftermoving the contact point rightwards for a certain distance. If thecontact point is released after long-pressing at the original position,the capital form of the letter may be determined via substep 1).(optional)

In terms of step 1305, the contents of the current input may bedynamically displayed in the indication area (e.g., above the pressedkey).

In terms of step 1306, the input method may search the words in thedictionary (which may include a user-defined dictionary) based on theletters inputted by the user, and may display the possible candidatewords in the word candidate area.

In terms of step 1307, the user may keep the inputted contents, or mayclick a candidate word in the candidate area to input it to the editingtext, or may use a shortcut key (e.g., SPACE or Enter key) toautomatically input the first candidate word to the editing text.

Although the procedure 1300 of the input method includes a series ofsteps performed in sequence, apparently, the procedure may include moreor less steps. And the steps may be performed in series or in parallel(e.g., using a multithread processor), or several steps may be combinedinto one step, or only the combination of some steps may be selected, orthe contact point motions may be changed. For example, it is very easyfor a person of ordinary skill in the art to design an input methodbased on the spirit of the present invention, where the symbol is notdisplayed (i.e., without step 1302) while the double-letter layout aswell as ambiguous and precise input approaches are still adopted; or todesign another input method, where substeps 4) and 5) in step 1304 areomitted, i.e., without fast switching uppercase and lowercase letter; orto design another input method, where the condition of the contact pointmotion in step 1304 is changed to inputting the symbol by double-click,etc. Apparently, such changes will not compromise the essentials of thepresent invention.

The foregoing layouts are designed based on English keyboard. However,it is readily appreciated by a person of ordinary skill in the art thatthe layouts may also be applied to a keyboard in other languages, e.g.,German keyboard, French keyboard, etc. Usually, the layout of thekeyboards in these languages may differ from the English keyboard.However, the benefits of high input efficiency and large keys, etc., mayalso be embraced, as long as the keyboards are modified similarly to thedouble-letter layout of the present design by referring to the computerkeyboard layout. Therefore, such changes will not compromise theessentials of the present invention either.

It is to be noted that the “tactile display device” according to thepresent invention is applicable to any electronic device screen withindication input system. The electronic device screen may include, butnot limited to, pressure-sensitive touch screen, electromagneticinduction touch screen, mouse indicative touch screen, etc. Thesescreens share the common characteristics of having a contact point withcoordinate position information together with the motion correspondingto pressing and releasing operations. For example, the coordinateposition information is included when the touch screen is pressed, andthe coordinate position information is also included when the left partof the mouse is pressed.

FIG. 14 is a basic block diagram illustrating a computer device orportable terminal device 1400 which is applicable to the softwarekeyboard input method of the present invention. A user input apparatus1401 is configured to receive a user input command. The user inputapparatus 101 includes a touch screen, or an electronic device screenequipped with a pointing system (e.g., a mouse, an inductive plate,etc.). A storage apparatus 1402 stores basic program commands thatsupport routine work for the computer device or portable terminaldevice, e.g., operating system, common software, etc. In addition, thestorage apparatus 1402 further stores computer program commands forimplementing a text input method according to the below embodiments ofthe present invention. Moreover, the storage apparatus 1402 furtherstores a dictionary and user configured information, etc. A controlapparatus 1403 may be implemented by any kind of microprocessor, microcontrol and programmable logic element, dedicated integrated circuit orsimilar device in the conventional art. The control apparatus 1403 isconfigured to implement the software keyboard input method according tothe present invention. A display apparatus 1404 is configured to providethe user with a visional interface illustrating the user input text,together with the foregoing keyboard layout, the key, the candidateword, the editing text, and a control process thereof. The displayapparatus may be separated from the user input apparatus 1401, or may beintegrated with the user input apparatus 1401, e.g., a touch and displayplate.

In the specification herein, the specific embodiments are provided forillustration of the present invention. However, it is apparent thatvarious modifications and variations can be made without departing fromthe spirit and scope of the present invention. Thus, the specificationand the annexed drawings shall be construed as illustrations for thepresent invention, as the invention is not so limited.

1. A software keyboard input method for implementing compound keys on anelectronic device screen, comprising: 1) a display step of displaying aplurality of keys on a tactile display device, wherein at least somekeys present a plurality of letters; 2) a detection step of detecting acontact point motion on said keys performed by a user; 3) adetermination step of determining a content corresponding to the presentkey-press performed by the user; and 4) an input step of inputting auser selection into an editing text.
 2. The method of claim 1, wherein,at least some keys present two letters in the display step.
 3. Themethod of claim 1, wherein, the determination step comprises:determining whether the present input is a precise input or a ambiguousinput; if the present input is a precise input, determining the contentof the present input to be the letter corresponding to the contact pointmotion; if the present input is a ambiguous input, determining thecontent of the present input to be any one of the letters on the key,and finalizing the content after a word in a candidate area is selectedby the user in the input step;
 4. The method of claim 1, wherein, thedetermination step comprises, if the contact point motion is pressing akey and then directly releasing the key, determining the content of thepresent input to be the letter closest to the position of a contactpoint being pressed on the key.
 5. The method of claim 2, wherein, thedetermination step comprises, if the contact point motion is pressing akey and then directly releasing the key, determining a position of thecontact point being pressed; if the position locates at the left part ofthe key, inputting the left letter on the key; otherwise, inputting theright letter on the key.
 6. The method of claim 1, wherein, thedetermination step comprises, if the contact point motion is pressing akey and directly releasing the key, determining the present input to bea ambiguous input and determining the content of the present input to beany one of the letters on the key, wherein the content is finalizedafter a word in the candidate area is selected by the user in the inputstep.
 7. The method of claim 1, wherein, the determination stepcomprises, if the contact point motion is pressing a key and thenreleasing the key after moving towards a direction of a letter on thekey for a certain distance, determining the present input to be aprecise input and determining the content of the present input to be theletter in said direction on the key.
 8. The method claim 2, wherein, thedetermination step comprises, if the contact point motion is pressing akey and then releasing the key after moving leftwards for a certaindistance, determining the present input to be a precise input anddetermining the content of the present input to be the left letter onthe key; if the contact point motion is pressing a key and thenreleasing the key after moving rightwards for a certain distance,determining the present input to be a precise input and determining thecontent of the present input to be the right letter on the key.
 9. Themethod of claim 1, wherein, the determination step comprises, if thecontact point motion is long-pressing a key and then selecting a letter,determining the present input to be a precise input and determining thecontent of the present input to be the selected letter.
 10. The methodof claim 1, wherein, the input step comprises adding a user-defined wordinto a user-defined word list when the user selects the user-definedword which is not in a dictionary and inputs the user-defined word inthe editing area via the precise input.
 11. The method of claim 1,further comprising the following step after the display step: 11 asymbol display step of displaying at least one symbol on some keys,wherein the at least one symbol includes but not limited to apunctuation, a number.
 12. The method of claim 11, wherein, thedetermination step comprises, if the contact point motion is pressing akey and then releasing the key after moving towards a direction of asymbol on the key for a certain distance, determining the content of thepresent input to be the symbol in said direction on the key.
 13. Themethod of claim 1, wherein, the determination step comprises, if thecontact point motion is pressing a key and then releasing the key aftermoving upwards for a certain distance, or releasing the key after movingupwards for a certain distance and then downwards for a certaindistance, or releasing the key after long-pressing for a certain period,or double-clicking the key, or any one of predetermined motions,determining the content of the present input to be an uppercase of anyone of the letters on the key or a switching case of a letter, whereinthe switching case of the letter indicates that an uppercase letter isdetermined when the default status is lowercase, and an lowercase letteris determined when the default status is uppercase.
 14. The method ofclaim 2, wherein, the determination step comprises, if the contact pointmotion is pressing a key and then releasing the key after movingupper-left for a certain distance, determining the content of thepresent input to be the uppercase of the left letter on said key, or theswitching case of the left letter on said key; if the contact pointmotion is pressing a key and then releasing the key after movingupper-right for a certain distance, determining the content of thepresent input to be the uppercase of the right letter on said key, orthe switching case of the right letter on said key, wherein theswitching case indicates that an uppercase letter is determined when thedefault status is lowercase, and an lowercase letter is determined whenthe default status is lowercase.
 15. The method of claim 1, wherein, thedetermination step comprises, if the contact point motion is pressing akey, moving towards a direction of a letter on the key, long-pressingthe key for a certain period and then releasing the key, determining thecontent of the present input to be the uppercase of the letter in themovement direction on said key, or the switching case of the letter inthe movement direction on said key, wherein the switching case of theletter indicates that an uppercase letter is determined when the defaultstatus is lowercase, and an lowercase letter is determined when thedefault status is uppercase.
 16. The method of claim 1, furthercomprising the following step after the determination step: 31) anindication step of displaying indication information of a current input.17. The method of claim 1, further comprising the following step afterthe determination step: 32) a prediction step of searching a predictedcandidate word in a dictionary based on the sequence of the keysinputted by the user and displaying said predicted candidate word. 18.The method of claim 16, wherein, the indication step comprisesdynamically displaying the contents of the current input in anindication area.
 19. The method of claim 17, wherein, the predictionstep comprises, searching, based on the sequence of the keys inputted bythe user, the word in the dictionary or the user-defined word list, anddisplaying the possible candidate word in the candidate area.
 20. Themethod of claim 1, wherein, the input step comprises inputting theselected word to the editing text via a preset operation, wherein thepreset operation includes, but not limited to, directly clicking theselected word in the candidate area, or pressing a confirmation keyafter a cursor is moved to the selected word.
 21. The method of claim 1,wherein, the input step comprises inputting a default candidate word tothe editing text by pressing any specified shortcut key, wherein theshortcut key includes, but not limited to, a space key or an Enter key.22. The method of claim 1, wherein, the input step comprisesautomatically inputting the default candidate word to the editing textwithout a selection in the candidate area.
 23. The method of claim 1,wherein, the input step comprises, directly inputting the content beingprecisely inputted to the editing text without a selection in thecandidate area when a precise input is adopted entirely.
 24. A portableelectronic device, wherein, the method of claim 1 is adopted.